package org.wang.generalcode.modules.sys.service;

import org.wang.generalcode.modules.sys.pojo.entity.Log;
import org.wang.generalcode.modules.sys.pojo.params.LogPageParams;
import org.wang.generalcode.modules.sys.pojo.vo.LogPageVO;
import org.wang.generalcode.modules.sys.pojo.vo.LogStatsVO;
import org.wang.generalcode.modules.sys.pojo.vo.LogVO;
import com.baomidou.mybatisplus.extension.service.IService;
import com.baomidou.mybatisplus.core.metadata.IPage;

import java.time.LocalDate;
import java.util.List;

/**
 * 系统日志表 服务类
 *
 * @author wz
 * @since 2024-08-08
 */
public interface ILogService extends IService<Log> {

    /**
     * 自定义分页
     *
     * @param page
     * @param logPageParams
     * @return
     */
    IPage<LogPageVO> selectLogPage(IPage<LogPageVO> page, LogPageParams logPageParams);

    /**
     * 获取访问趋势
     *
     * @param start
     * @param end
     * @return
     */
    LogVO getVisitTrend(LocalDate start, LocalDate end);

    /**
     * 获取访问统计
     *
     * @return
     */
    List<LogStatsVO> getVisitStats();
}
